#ifndef SEMAFORO_H_
#define SEMAFORO_H_

#include <sys/ipc.h>
#include <sys/sem.h>
#include <sys/types.h>
#include <string>
#include <string.h>
#include <errno.h>

class Semaforo
{

private:
	int id;

public:
	Semaforo(key_t clave);
	Semaforo(const Semaforo & orig);
	~Semaforo();
	Semaforo& operator=(const Semaforo & orig);
	int p() const; // decrementa
	int v() const; // incrementa
	void eliminar() const;
	int setVal(int valor) const;
};

#endif /* SEMAFORO_H_ */
